////////////////////////////////////////////////////////////////////////////////
// Copyright 2006 CORE Solutions Limited
// All rights reserved.
// PROPRIETARY AND CONFIDENTIAL INFORMATION.
// Use is subject to license terms.
//
// FUNCTION ID      :   USER
// AUTHOR           :   Victor Zheng 
// DATE CREATE      :   2006/02/01
// DESCRIPTION      :   a VO file for the function, USER
//                  :   
//                  :   
//                  :   
//
// MODIFICATION HISTORY:
// DATE         AUTHOR          VERSION NO.         COMMENT
// -----------  --------------  ------------------  -------------------
// 2006/02/01   Victor Zheng    1.0                 source is generated.
// 2006/06/20   William Xu      1.0                 BugZilla #6277
//
//
////////////////////////////////////////////////////////////////////////////////

package com.erp.app.admin.userSetup.vo;

import java.sql.Timestamp;

import com.erp.app.admin.userSetup.pk.UserPk;
import com.erp.framework.model.pk.SimpleSearchMaintStylePk;
import com.erp.framework.model.vo.SimpleSearchMaintStyleVo;
import com.erp.framework.types.CustomBigInteger;

/**
* <p>A <strong>VO</strong>(Value Object) is a JavaBean which provides property
* getter and setter methods for all of the bean properties, and implements
* <code>Serializable</code>, as required by the JavaBean specification
* The main purpose for this class is to store the data retrieved from the database,
* and the converted data from the web browsers.
*
* @author          Victor Zheng 
* @version 1.0     2006/02/01
* @since           FrameWork 1.0
*
*/
public class UserVo extends SimpleSearchMaintStyleVo {

	//DB Table Name: T_USER

	//PK Attributes
	private String userCode;                         //DB Column Name: USER_CODE
	private String companyCode;                      //DB Column Name: COMPANY_CODE

	//Other Attributes
	private String userName;                         //DB Column Name: USER_NAME
	private String email;                            //DB Column Name: EMAIL
	private String password;                         //DB Column Name: PASSWORD
	private String roleGroupId;                      //DB Column Name: ROLE_GROUP_ID
	private CustomBigInteger groupLevel;             //DB Column Name: GROUP_LEVEL
	private String activation;                       //DB Column Name: ACTIVATION
	private String createUser;                       //DB Column Name: CREATE_USER
	private Timestamp createDate;                    //DB Column Name: CREATE_DATE
	private String updateUser;                       //DB Column Name: UPDATE_USER
	private Timestamp updateDate;                    //DB Column Name: UPDATE_DATE
	private String userGroupCode;                    //DB Column Name: USER_GROUP_CODE
	private String dept;                             //DB Column Name: DEPT
	private String contentType;                      //DB Column Name: CONTENT_TYPE
	private byte[] signature;                        //DB Column Name: SIGNATURE
	private String salesmanFlag;
	private String qaHandlerFlag;					 //DB Column Name: QA_HANDLER
	private String qcHandlerFlag;					 //DB Column Name: QC_HANDLER
	private String approverFlag;					 //DB Column Name: APPROVER
	private String gmmFlag;                          //DB Column Name: GMM
	private String userDivision;                     //DB Column Name: DIVISION
    private String hdrCompanyType;                                                                     //DB Column Name: COMPANY_TYPE
    private String hdrNtTeam;                                                                          //DB Column Name: NT_TEAM
    private String hdrCustCode;                                                                        //DB Column Name: CUST_CODE

	
	/**
	* Stores the detail child names by the fully-qualified java class path.
	*
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	protected  void setChildTypesName() {

	}

	/**
	* Stores the table schema name by the fully-qualified java class path.
	*
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	protected void setTableSchemaName() {
		this.tableSchemaName="com.erp.app.admin.userSetup.schema.UserSchema";
	}

	/**
	* Stores the detail child table schema names by the fully-qualified java class path.
	*
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	protected  void setChildTableSchemaNames() {

	}

	/**
	* Stores the DAO name by the fully-qualified java class path.
	*
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	protected void setDaoName() {
		this.daoName="com.erp.app.admin.userSetup.dao.UserDao";
	}

	/**
	* Stores the biz logic name by the fully-qualified java class path.
	*
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	protected void setBizLogicName() {
		this.bizLogicName = "com.erp.app.admin.userSetup.bizLogic.UserBizLogic";
	}

	/**
	* Returns the primary key for this class.
	* @return      primary key of this class
	*
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	public SimpleSearchMaintStylePk getSearchMaintStylePk() {
		return new UserPk(this.userCode, this.companyCode);
	}

	/**
	* Converts to a string representing the data in this object.
	* A new <code>String</code> object is allocated and initialized to 
	* contain the character sequence currently represented by this 
	* object. This <code>String</code> is then returned. Subsequent 
	* changes to this object do not affect the contents of the 
	* <code>String</code>. 
	*
	* @return     a string representation of the object.
	* @see        java.lang.Object#toString()
	* @author     Victor Zheng 
	* @since      FrameWork 1.0
	*/
	public String toString() {
		String pkStr = "PK: {userCode = " + this.userCode
			+ "\n, companyCode = " + this.companyCode + "}\n";

		String colStr = "COL: {userName = " + this.userName
			+ "\n, email = " + this.email
			+ "\n, password = " + this.password
			+ "\n, roleGroupId = " + this.roleGroupId
			+ "\n, groupLevel = " + this.groupLevel
			+ "\n, activation = " + this.activation
			+ "\n, createUser = " + this.createUser
			+ "\n, createDate = " + this.createDate
			+ "\n, updateUser = " + this.updateUser
			+ "\n, updateDate = " + this.updateDate
			+ "\n, userGroupCode = " + this.userGroupCode
			+ "\n, dept = " + this.dept
			+ "\n, contentType = " + this.contentType
			+ "\n, qaHandlerFlag = " + this.qaHandlerFlag 
			+ "\n, qcHandlerFlag = " + this.qcHandlerFlag
			+ "\n, approverFlag = " + this.approverFlag 
			+ "\n, gmmFlag = " + this.gmmFlag
			+ "\n, userDivision = " + this.userDivision 
			+ "}\n";

		return "UserVo.toString() is:\n" + pkStr + colStr;
	}

	////////////////////////////////////////////////////////////////////////////////
	//Generated Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////

	public String getUserCode() {
		return this.userCode;
	}

	public String getCompanyCode() {
		return this.companyCode;
	}

	public String getUserName() {
		return this.userName;
	}

	public String getEmail() {
		return this.email;
	}

	public String getPassword() {
		return this.password;
	}

	public String getRoleGroupId() {
		return this.roleGroupId;
	}

	public CustomBigInteger getGroupLevel() {
		return this.groupLevel;
	}

	public String getActivation() {
		return this.activation;
	}

	public String getCreateUser() {
		return this.createUser;
	}

	public Timestamp getCreateDate() {
		return this.createDate;
	}

	public String getUpdateUser() {
		return this.updateUser;
	}

	public Timestamp getUpdateDate() {
		return this.updateDate;
	}

	public String getUserGroupCode() {
		return this.userGroupCode;
	}

	public String getDept() {
		return this.dept;
	}

	public String getContentType() {
		return this.contentType;
	}

	public byte[] getSignature() {
		return this.signature;
	}
	
	public String getSalesmanFlag() { return salesmanFlag; }

	public String getApproverFlag() {
		return approverFlag;
	}

	public String getQaHandlerFlag() {
		return qaHandlerFlag;
	}

	public String getQcHandlerFlag() {
		return qcHandlerFlag;
	}
	
	public String getGmmFlag() {
		return gmmFlag;
	}
	
	public String getUserDivision() {
		return userDivision;
	}

	public void setUserCode(String userCode) {
		this.userCode = userCode;
	}

	public void setCompanyCode(String companyCode) {
		this.companyCode = companyCode;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public void setRoleGroupId(String roleGroupId) {
		this.roleGroupId = roleGroupId;
	}

	public void setGroupLevel(CustomBigInteger groupLevel) {
		this.groupLevel = groupLevel;
	}

	public void setActivation(String activation) {
		this.activation = activation;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	public void setCreateDate(Timestamp createDate) {
		this.createDate = createDate;
	}

	public void setUpdateUser(String updateUser) {
		this.updateUser = updateUser;
	}

	public void setUpdateDate(Timestamp updateDate) {
		this.updateDate = updateDate;
	}

	public void setUserGroupCode(String userGroupCode) {
		this.userGroupCode = userGroupCode;
	}

	public void setDept(String dept) {
		this.dept = dept;
	}

	public void setContentType(String contentType) {
		this.contentType = contentType;
	}

	public void setSignature(byte[] signature) {
		this.signature = signature;
	}
	
	public void setSalesmanFlag(String salesmanFlag) { this.salesmanFlag = salesmanFlag; }

	
	public void setApproverFlag(String approverFlag) {
		this.approverFlag = approverFlag;
	}
	
	public void setQaHandlerFlag(String qaHandlerFlag) {
		this.qaHandlerFlag = qaHandlerFlag;
	}

	public void setQcHandlerFlag(String qcHandlerFlag) {
		this.qcHandlerFlag = qcHandlerFlag;
	}

	public void setGmmFlag(String gmmFlag) {
		this.gmmFlag = gmmFlag;
	}

	public void setUserDivision(String userDivision) {
		this.userDivision = userDivision;
	}

    
	////////////////////////////////////////////////////////////////////////////////
	//Other Accessors (get/set methods)
	////////////////////////////////////////////////////////////////////////////////


    public String getHdrCompanyType() {
        return hdrCompanyType;
    }
    public void setHdrCompanyType(String companyType) {
        this.hdrCompanyType = companyType;
    }
    public String getHdrCustCode() {
        return hdrCustCode;
    }
    public void setHdrCustCode(String custCode) {
        this.hdrCustCode = custCode;
    }
    public String getHdrNtTeam() {
        return hdrNtTeam;
    }
    public void setHdrNtTeam(String ntTeam) {
        this.hdrNtTeam = ntTeam;
    }
}